package ig.formato.gui.app.plugin;

import ig.formato.gui.app.DConfiguracion;
import ig.metrica.ejb.escenario.EscenariosDTO;
import ig.metrica.ui.escenario.MAdministradorEscenarios;
import ig.util.NoContinuaException;
import java.awt.Dimension;
import java.awt.Frame;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import java.sql.Timestamp;
import java.util.Collection;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

/**
 *
 * @author jsanchez
 */
public class PreportesExtends extends ig.formato.gui.app.PReporte {
    JFrame frame =null;
    public PreportesExtends(JFrame frame) throws NoContinuaException {
        super(frame);
        this.frame=frame;
        initComponent();
        this.setDataCBEscenarios(new MAdministradorEscenarios(null).buscar());
        setPreferredSize(new Dimension(800, 600));
    }

    private javax.swing.JPopupMenu MenuSystemas = new javax.swing.JPopupMenu();;
    private javax.swing.JMenuItem Sistema = new javax.swing.JMenuItem("Systema");
    private javax.swing.JMenuItem AsercaDe = new javax.swing.JMenuItem("Acerca de..");
    private void initComponent() {
       setSELECCION(IGMETRICA);
        AsercaDe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JOptionPane.showMessageDialog(frame, ".:| Plun-ig de IG-Formato para IG-Metrica |:.");
            }
        });
        MenuSystemas.add(Sistema);        
        Sistema.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                try {
                    new DConfiguracion(frame, true);
                } catch (InvalidKeyException ex) {
                    JOptionPane.showMessageDialog(frame, "Error : " + ex);
                    ex.printStackTrace();
                } catch (InvalidKeySpecException ex) {
                    JOptionPane.showMessageDialog(frame, "Error : " + ex);
                    ex.printStackTrace();
                } catch (NoSuchAlgorithmException ex) {
                    JOptionPane.showMessageDialog(frame, "Error : " + ex);
                    ex.printStackTrace();
                } catch (Exception ex) {
                    JOptionPane.showMessageDialog(frame, "Error : " + ex);
                    ex.printStackTrace();
                }
            }
        });
        MenuSystemas.add(AsercaDe);
        this.Contenedor.setComponentPopupMenu(MenuSystemas);

    }

    private void setDataCBEscenarios(Collection collection) {
        this.CEscenarios.removeAllItems();
        for (Object elem : collection) {
            if (((EscenariosDTO) elem).getEstado().equals(2)) {
                this.CEscenarios.addItem(elem);
            }
        }
    }

    @Override
    public Timestamp getFecha() {
        return ((EscenariosDTO) this.CEscenarios.getSelectedItem()).getFecha();        
    }

    @Override
    public Integer getIdEscenario() {
        return ((EscenariosDTO) this.CEscenarios.getSelectedItem()).getId();        
    }

}